//
//  MyConfigTool.h
//  MyConfigTool
//
//  Created by 李蔚 on 17/1/6.
//  Copyright © 2017年 陈进. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@interface MyConfigTool : NSObject

/**
 *  用颜色创建一个图片(没有大小，通过指定对应imageview大小确认)
 */
+(UIImage *)createImageWithColor:(UIColor *)color;
/**
 *  隐藏字符串中间部分，显示头尾
 */
+(NSString *)hideString:(NSString *)string WithHead:(NSInteger)headLong andTail:(NSInteger)tailLong;

/***********************************************************************/
/**
 *  显示警告的提示框
 *
 *  @param msg      提示内容
 *  @param title    最上方居中显示的标题
 *  @param delegate 代理者
 */
+(void)showStatusWithMsg:(NSString *)msg title:(NSString *)title AndDelegate:(id)delegate;
/**
 *  根据文字和font计算文字长度
 *
 *  @param str  文字内容
 *  @param font 字体大小
 *
 *  @return 返回一个长度
 */
+(CGSize)string:(NSString *)str sizeWithFont:(CGFloat)font;
+(CGSize)stringnNew:(NSString *)str sizeWithFont:(CGFloat)font;
/**
 *  创建一个按钮
 */
//+(UIButton *)createButtonWithFrame:(CGRect)frame title:(NSString *)title titleColor:(UIColor *)color titleFont:(UIFont *)font target:(id)target action:(SEL)action  image:(UIImage *)image backgroundImage:(UIImage *)backgroundImage selectedBackgroundImage:(UIImage *)selectedImage;

/**
 *  根据文字大小设置按钮
 */
+(UIButton *)createButtonWithFrame:(CGRect)frame buttonTitle:(NSString *)buttonTitle titleColor:(UIColor *)titleColor btnTitleFont:(NSInteger)titleFont target:(id)target action:(SEL)action;

/**
 *  创建一个输入框，并添加到对应视图上
 */
+(UITextField *)createTextfieldWithFrame:(CGRect)frame backgroundImage:(UIImage *)image font:(UIFont *)font inView:(UIView *)view delegate:(id)delegete placeholder:(NSString *) placeholder;
/**
 *  根据对应字符，截取字符左右边的字符串
 *  isFrom 是否到所选字符开始截取
 */
+(NSString *)string:(NSString *)str chooseStr:(NSString *)chooseStr isFrom:(NSInteger)isFrom;
/**
 *  设置圆形图片
 */
+(UIImageView *)createImageViewWithFrame:(CGRect)frame imageName:(NSString *)imageName bgColor:(UIColor *)bgColor;
/**
 *  创建一个输入框
 */
+(UITextField *)createTextfieldWithFrame:(CGRect)frame placeholderTitle:(NSString *)placeHolderTitle;
/**
 *  根据16进制显示颜色
 */
+(UIColor *)stringTOColor:(NSString *)str;
/**
 *  根据比例返回宽
 */
+(CGFloat)WidthWithCurrentWidth:(NSInteger)currentWidth;
/**
 *  根据比例返回高
 */
+(CGFloat)HeightWithCurrentHeight:(NSInteger)currentHeight;
/**
 *  设置登录注册相关的按钮
 */
+(UIButton *)createButtonWithFrame:(CGRect)frame  btnTitle:(NSString *)btnTitle titleFont:(UIFont *)titleFont target:(id)target action:(SEL)action view:(UIView *)view;
/**
 *  创建一个label
 */
+(UILabel *)createLabelWithFrame:(CGRect)frame labelTitle:(NSString *)labelTItle labelFont:(UIFont *)labelFont lableColor:(UIColor *)color;

/**
 *  设置自动换行的label
 */
+(UILabel *)createAutoLabelWithFrame:(CGRect)frame labelTitle:(NSString *)labelTitle labelFont:(UIFont *)labelFont titleColor:(UIColor *)titleColor breakLine:(NSInteger)breakLine;

/**
 *  返回输入框placeholder的颜色和大小
 */
+(UITextField *)createTextfieldWithColor:(UIColor *)placeColor placeFont:(UIFont *)placeFont;
/**
 *  显示一条线
 */
+(UILabel *)lineOfLabelWithHeight:(NSInteger)lineHeight AndY:(NSInteger)Y lineColor:(UIColor *)lineColor;
/**
 *  红色警告提示
 */
+(UILabel *)redLabWithFrame:(CGRect)frame labText:(NSString *)labText;
/**
 *  时间戳转时间
 *  formatStr 格式 ，如 @"YYYY.MM.dd"
 */
+(NSString *)stampToDateWithStr:(NSString *)stampStr  format:(NSString *)formatStr;

/*
 *日期转时间戳
 *
 *
 */
+(NSString *)dateStrToStampStrWithDateStr:(NSString *)dateStr format:(NSString *)formatStr;

/**
 *  比较当前时间戳和给定时间戳的差值，显示时分秒
 *  formatStr 格式 ，如 @"YYYY.MM.dd"
 */
+(NSString *)compareStampWithStampValue:(NSString *)stampValue format:(NSString *)formatStr;
/**
 * 日期与1970-01-01 00：00：00比较，返回几个月前，几分钟前
 */
+(NSString *)getDetailDateOfdateStr:(NSString *)dateStr;

/**
 *  字符串去除空格
 */
+(NSString *)stringReplaceSpaceStr:(NSString *)str;

/**
 *  设置模糊图片
 */
+(void)setBlurImage:(UIImageView *)imageView AlphaValue:(CGFloat)AlphaValue;
/**
 *  进入登录界面
 */
+(void)GoToLoginVCWithViewController:(UIViewController *)VC;

/**
 *  返回图片原图大小
 *  imgType 图片类型， 0 宽 ，1 高
 */
+(CGFloat)ReturnWidthWithImgName:(NSString *)imageName imgType:(NSInteger)imgType;

/**
 *  根据view 得到父控制器
 */
+(UIViewController *)ReturnViewControllerByView:(UIView *)view;
/** 获取当前控制器 */
+ (UIViewController *)currentVC;
/**
 *  获取设备UUID
 */
+ (NSString *)getUUID;

/**
 *  字典转json
 */
+(id)dictionaryWithJsonStr:(NSString *)jsonStr;

/**
 *  判断字符串包含什么字符，返回对应的字符串
 *  index 0 包含字符串左边的数据 1 包含字符串右边的数据
 */
+(NSString *)CheckStr:(NSString *)getStr andContailsStr:(NSString *)contansStr andIndex:(NSInteger)index;

/**
 计算字符串尺寸
 
 @param size 传入限制尺寸
 @param fontSize 字符串的大小
 @param text 内容
 @return 返回尺寸
 */
+ (CGRect)myConfigWithLabelTextRectWithSize:(CGSize )size withFontSize:(NSInteger )fontSize withText:(NSString *)text;

/********************17-2-22新增***********************/
/**
 *  转为JSON字符串
 *
 *  @param parameters 参数
 *
 *  @return JSON字符串
 */
+ (NSString *)jsonStringWithParameters:(id)parameters;


/**
 *  判断字符串是否为空
 *
 *  @param string 参数
 *
 *  @return 判断结果
 */
+ (BOOL)isTextEmpty:(NSString *)string;
/**
 *根据字符串长度返回需要显示的高度
 *string 传入的字符串
 *rowWidth 单行的宽度
 *columnHeight 单行的高度
 *font 字体大小
 */
+(CGFloat)getString:(NSString *)string rowWidth:(CGFloat)width columnHeight:(CGFloat)height fontSize:(CGFloat)font;
/*
 *更具数组里面包含字典的数据，将传入对应字段的数据根据格式转化成字符串
 *arr 传入的数组
 *centerStr 分隔符
 *str 字典中包含的字段
 */
+(NSString *)returnStrByGetSubArr:(NSArray *)arr centerStr:(NSString *)centerStr byStr:(NSString *)str;
//停止刷新
+ (void)stopRefresh:(UITableView *)tableView;
//得到最上层的window
+(UIWindow *)lastWindow;
/****************************2017-06-07******************************/
/**
 *返回图片的大小
 */
+(CGSize)returnImgSizeWithImgName:(NSString *)imgName;
/**
 *文字中间横线
 */
+(NSMutableAttributedString *)returnLineOfCenterWithOriginalStr:(NSString *)originalStr;

/*
 *数字转字符串
 */
+(NSString *)numChangeToStrWithNum:(id)num;
/*
 *当前时间的数据
 */
+(NSString *)returnCurrentTimeDateWithDateStr:(NSString *)dateStr;

/*
 *网络请求显示弹框
 */
+(void)showNetDialogWithStr:(NSString *)DialogStr;

//缓存大小
+ (CGFloat)folderSizeAtPath:(NSString *)folderPath;
//单个文件大小
+ (long long)fileSizeAtPath:(NSString *)filePath;

//拨打电话
+(void)callSbWithPhoneStr:(NSString *)PhoneStr;
//中文转拼音
+ (NSString *)transform:(NSString *)chinese;
// 检查银行卡
+ (BOOL)checkBankCardNumber:(NSString *)cardNumber;

/**
 限制textField字数

 @param textField textField
 @param maxSL 最大字符数
 */
+ (void)myConfigMaxStarwordsLengthWithTextField:(UITextField *)textField withMaxSL:(NSInteger )maxSL;
/**
 限制textView字数
 
 @param textView textView
 @param maxSL 最大字符数
 */
+ (void)myConfigMaxStarwordsLengthWithTextView:(UITextView *)textView withMaxSL:(NSInteger )maxSL;
//获取拼音首字母(传入汉字字符串, 返回大写拼音首字母)
+(NSString *)firstCharactor:(NSString *)aString;

+ (UIImageView *)getLineViewInNavigationBar:(UIView *)view;
+ (void)webViewWithJS:(UIWebView *)webView;
@end
